<?php
/**
 * oscshop 电子商务系统
 *
 * ==========================================================================
 * @link      http://www.oscshop.cn/
 * @copyright Copyright (c) 2015 oscshop.cn. 
 * @license   http://www.oscshop.cn/license.html License
 * ==========================================================================
 *
 * @author    李梓钿
 *
 */
namespace Admin\Controller;
use Think\Controller;
use Think\Auth;
class CommonController extends Controller{
	protected $userId = 1;
	protected $userName = '123';
     /* 初始化,权限控制,菜单显示 */
     protected function _initialize(){
		$sess_auth = session('user_auth');
		if (IS_AJAX) {
			header("Access-Control-Allow-Origin: *");
		 	if (!$sess_auth) {
            	$this->ajaxReturn(array('errcode'=>10000,'errmsg'=>'请先登录','url'=>U('/Public/login')),'JSON');
        	}
         	// 获取当前用户ID
        	$uid = is_login();
        	if(!$uid){// 还没登录 跳转到登录页面
           		$this->ajaxReturn(array('errcode'=>10000,'errmsg'=>'请先登录','url'=>U('/Public/login')),'JSON');
        	}
        	$this->userId = $uid;
        	$this->userName = $sess_auth['username'];
		}else{
	//		 \Think\Log::write('session is ===='.var_export($sess_auth));
	//		 file_put_contents('/tmp/update.txt',"session1==".var_export($sess_auth,true)."\r\n",FILE_APPEND);
			 if (!$sess_auth) {
				 $this->error('非法访问！正在跳转登录页面！',U('/Public/Login'));
			 }


	        // 获取当前用户ID
	        define('UID',is_login());
	        if(!UID){// 还没登录 跳转到登录页面
	            $this->redirect('Public/login');
	        }
			/* 读取数据库中的配置 */
	        $config =   S('DB_CONFIG_DATA');
	        if(!$config){
	            $config =   api('Config/lists');
	            S('DB_CONFIG_DATA',$config);
	        }
	        C($config); //添加配置
			 //当前登录用户id
			 $uid = $sess_auth["uid"];
			 //当前访问action地址
			 $url = CONTROLLER_NAME.'/'.ACTION_NAME;
			 //验证是否有权限访问该地址
			 $result = $this->authcheck($url,$uid,1,"url",$relation='or');
			 $this->user_id=session('user_auth')['uid'];
	//		 echo $url;exit;
	//		 if(!$result){
	//			 $this->error('对不起没有权限！');
	//		 }
		}
     }

	/**
	 * @param $rule 要验证的规则名称
	 * @param $uid	用户id
	 * @param string $relation 规则组合方式，默认为‘or’，以上3个参数都是根据Auth的check()函数来的
	 * @param $t 符合规则后执行代码
	 * @param string $f 不符合规则的执行代码，默认抛出没有权限
	 * @return string
	 */
	function authcheck($rule,$uid,$type,$t,$relation='or',$f='没有权限'){

		$auth = new Auth();
		return $auth->check($rule,$uid,$type,$t,$relation)?$t:false;
	}
	 
	/* 空操作，用于输出404页面 */
	public function _empty(){	
		// $this->display('Public:404');die();
		die('空操作');
	}
	
	/**
	 *跳转控制	 
	 */
	public function osc_alert($status){
				
		if($status['status']=='back'){
			$this->error($status['message']);
			die;					
		}elseif($status['status']=='success'){
			$this->success($status['message'],$status['jump']);
			die;
		}elseif($status['status']=='fail'){
			$this->error($status['message'],$status['jump']);
			die;
		}
	}

}
?>